#ifndef __APP_BT_H__
#define __APP_BT_H__
#include "app_device.h"
#include "app_serial.h"
typedef enum {
    BT_BAUD_9600 = '4',
    BT_BAUD_115200 = '8',
}BTBraudRate;
/**
 * 初始化
 * 1. 将蓝牙数据的预处理方法装配给设备模块
 * 2 设置设备的蓝牙默认配置，并连接蓝牙 
 */
int app_bt_init(device_t *device);
/**
 * @brief 蓝牙数据的预处理方法
 *
 * @param data 数据
 * @param len 数据长度
 * @return int -1:失败,others:处理后的数据长度
 * 1. 数据长度不能小于6
 * 2. 数据长度不能大于256
 * 3. 数据长度不能操作12个字节
 */
int app_bt_preWrite(char *data,int len );

/**
 *  读后预处理
 */
int app_bt_postRead(char *data,int len );


/**
 * 测试蓝牙是否可用
 */
int app_bt_status(device_t *device);

/**
 * 修改蓝牙名称
 */
int app_bt_rename(device_t *device, char *name);

/**
 * 设置波特率
 */
int app_bt_setBraudRate(device_t *device, BTBraudRate braud_rate);

/**
 * 重置(修改的配置才生效)
 */
int app_bt_reset(device_t *device);

/**
 * 设置组网id(同一个组的多个设备组网id相同)
 * net_id： 4位十六进制字符串
 */
int app_bt_setNetId(device_t *device, char *net_id);

/**
 * 设置蓝牙MAC地址(同一个组的多个设备MAC地址不同)
 * maddr: 4位十六进制字符串
 */
int app_bt_setmaddr(device_t *device, char *maddr);


#endif /* __APP_BT_H__ */
